<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>location和history</title>
	</head>
	<body>
		<p>
		location 是BOM对象之一，它提供了与当前窗口中加载的文档有关的信息，
		还提供了一些导航功能。事实上，location对象是window对象的属性，也是
		documen对象的属性，所以window.location和document.location等效。
		</p>
		<br />
		<div id="a"></div>
		<a href="javascript:back();">prev<<</a>
			<br />
		<a href="javascript:forward()">next >> </a>
			<br />
		<a href="javascript:go(1)">go >> </a>
		<p>history 对象是window对象的属性，它保存着用户上网的记录从窗口被打开的那一刻算起</p>
	</body>
	
	
	<script>
		
	/*	alert(window.location);//http://127.0.0.1:8020/JavaScriptText/html/17BOM04.html
		alert(window.document.location);////http://127.0.0.1:8020/JavaScriptText/html/17BOM04.html
		
		//引号可有可无
		location.hash='#6';//设置#后的字符串并跳转
		alert(location.hash);//获取#后的字符串
		
		location.port=8888;//设置端口号并跳转
		alert(location.port);//获取当前端口号
		
		location.hostname='lee';//设置主机名并跳转
		location.pathname=Lee;//设置当前路径并跳转
		location.protocol='ftp';//设置协议，没有跳转
		location.search='?id=123';//设置？后的字符串并跳转
		location.href ='http://www.baidu.com';//设置跳转url并跳转
		
		*/
		
		//获取路径中  ?id=5&search=ok 这种类型的键值对
		function getArgs(){
			//创建一个存放键值对的数组
			var args=[];
			//去掉？号
			var qs = location.search>0?location.search.substring(1):' ';
			//按&字符串拆分数组
			var items =qs.split('&');
			var item =null,name=null,value=null;
			//遍历
			for(var i=0;i<items.length;i++){
				item =items[i].split('=');
				name=item[0];
				value=item[1];
				//把键值对存放到数组中去
				args[name] =value;
			}
			return args;
		}
/*		alert(getArgs());//需要在特定路径下
		
		
		location.assign('http://www.baidu.com');//跳转到指定url
		location.reload()//最有效的重新加载，有可能从缓存中加载
		location.reload(true);//强制加载，从服务器源头重新加载
		location.replace('http://www.baidu');//可以避免产生跳转前的历史记录，跳转后无法回退。
	*/
	
	
	alert(history.length);//历史记录的总量
	//history.length==0表示没有历史记录
	function back(){
		history.back();//后退
	}
	function forward(){
		history.forward();//前进
	}
	function go(num){
		history.go(num);//正数前进几页，负数后退几页
	}
	</script>
</html>
